package com.leetroll.api.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.leetroll.api.vo.LoginVO;
import com.leetroll.api.vo.UserVO;
import com.leetroll.common.entity.User;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * 用户表 服务类
 */
public interface UserService extends SuperService<User> {

    /**
     * 获取用户列表
     */
    IPage<User> getPageList(UserVO userVO);

    /**
     * 新增用户
     */
    User addUser(LoginVO loginVO);

    User getUser(Long id);

    /**
     * 编辑用户
     */
    Boolean editUser(UserVO userVO);

    /**
     * 用户头像更换
     */
    Boolean updateAvatar(UserVO userVO);

    /**
     * 用户背景图片更换
     */
    Boolean updateBackImg(UserVO userVO);

    /**
     * 删除用户
     */
    String deleteUser(UserVO userVO);

    /**
     * 重置用户密码
     */
    String resetUserPassword(UserVO userVO);

    User addWeChatUser(String openid, String nickname, String headimgurl, int sex);

    User getByOpenid(String openid);

    void updateWeChatUser(User user, String nickname, String headimgurl, int sex);
}
